use hypers::prelude::*;
use crate::dto::sys_user::UserLoginReq;

pub struct SysMonitor;

#[openapi(name = "monitor",tags((name = "服务器信息", description = "服务器信息模块")))]
impl SysMonitor {
    #[get(
        "/server",
        tag = "服务器信息"
        // responses(
        //     (status = 200, description = "服务器信息", body = Data),
        // )
    )]
    async fn get_server_info() -> impl Responder {}

    #[get(
        "/server-event",
        tag = "服务器信息"
        // responses(
        //     (status = 200, description = "服务器信息", body = Data),
        // )
    )]
    async fn get_server_info_ws() -> impl Responder {}
}

pub struct NoAuthApi;

#[openapi(name = "comm",tags((name = "通用模块", description = "无需授权Api.通用模块")))]
impl NoAuthApi {
    #[post(
        "login",
        tag = "用户登录",
        // responses(
        //     (status = 200, description = "登录", body = Data),
        // )
    )]
    async fn login(login_req: UserLoginReq) -> impl Responder {
        
    }

    #[post(
        "log_out",
        tag = "退出登录",
        // responses(
        //     (status = 200, description = "退出登录", body = Data),
        // )
    )]
    async fn log_out() -> impl Responder {}

    #[get(
        "get_captcha",
        tag = "获取验证码",
        // responses(
        //     (status = 200, description = "获取验证码", body = Data),
        // )
    )]
    async fn get_captcha() -> impl Responder {}
}
